#ifndef __NR_FAR_H
#define __NR_FAR_H

///公共
typedef void (*audio_callback_t)(u8 *ptr, u32 samples, int ch_mode, void *params);

typedef struct {
    cbuf_cfg_t nr_far_mic_cbuf;
    u8 mute;
    u8 sample_rate;
    u16 samples;
    audio_callback_t callback;
} nr_far_mic_cfg_t;

void nr_far_mic_init(u8 sample_rate, u16 samples);
void nr_far_mic_input(u8 *ptr, u32 samples, int ch_mode, void *params);
void nr_far_mic_output_callback_set(audio_callback_t callback);
void nr_far_mic_mute_set(uint8_t mute);
void nr_far_mic_param_set(u16 noise_thr, u16 nr_level);
void nr_far_mic_exit(void);
#endif
